// pageMy/addMyWarehouse/index.js
Page({
  data: {
    columns:["通风贮藏库","机械储存库","气调贮藏库"],//储存库类型
    typeFlag:false,//类型弹框状态
    info:{
      businessId:wx.getStorageSync('userId'),
      type:0,
      sort:0,
      warehouseNo:"",
      warehouseName:"",
      typeName:"通风贮藏库",
      address:"",
      longitude:"",
    }
  },
  // 打开类型弹框
  showType(){
    this.setData({typeFlag:true})
  },
  // 文本框内容修改
  onChangeTxt(e) {
    const field = e.target.dataset.field
    
    const info = this.data.info
    info[field]=e.detail
    this.setData({
      info
    })
  },
  // 储存库类型修改
  onChange(e){
    const { picker, value, index } = e.detail;
    let info=this.data.info
    info.type=index
    info.typeName=value
    this.setData({
      info,
      typeFlag:false
    })
  },
  // 关闭储存库类型弹窗
  onClose(){
    this.setData({typeFlag:false})
  },
// 地图选择位置
  getLocation: function(e) {
    let that=this
    // 使用微信小程序的获取位置API
    wx.chooseLocation({
      success: function(res) {
        // 获取成功，res包含经度和纬度
        console.log(res.longitude)
        console.log(res.latitude)
        let info=that.data.info
        info.latitude=res.latitude,
        info.longitude=res.longitude,
        info.address=res.address
        that.setData({
          info,
          markers: [{
            id: 1,
            latitude: res.latitude,
            longitude: res.longitude,
            iconPath: '/assets/images/marker_black.png',
            width: '50rpx',
            height: '50rpx'
          }]
        })
      },
      fail: function(e) {
        // 获取失败
        console.log('获取位置失败')
      }
    })
  },
  // 提交
submit() {

  // 需要校验的字段
  const requireField = [
    { field: 'warehouseNo', text: '请填写编号' },
    { field: 'warehouseName', text: '请填写名称' },
    { field: 'address', text: '请填写地址' },
    { field: 'longitude', text: '请地图定位' },
  ]

  // 校验
  const obj = this.data.info

    for (let key in obj) {
      // 查找key 是否在必填项中
      const resIndex = requireField.findIndex(item => item.field === key)

      // 未填项提示
      if (!obj[key] && (resIndex > -1)) {
        return wx.showToast({
          title: `${requireField[resIndex].text}`,
          icon: 'none'
        })
        return
      }


  }


  // 校验通过
  // 添加储存库
  wx.$req({
    url: '/wms/warehouse',
    method: 'post',
    data: JSON.stringify(this.data.info),
    loadingText: '提交中..'
  }).then(res => {

    wx.hideLoading()

    wx.showToast({
      title: '新增成功',
      icon: 'success'
    })

    wx.navigateBack()
  })
}
  
})